/**********************************************************************
* 版权所有 (C)2019, zhenhuasu。
*
* 文件名称：udp_client.h
* 文件标识：无
* 内容摘要：udp client
* 其它说明：无
* 当前版本：V1.0
* 作    者：zhenhuasu
* 完成日期：2019.08.27
*
**********************************************************************/

#ifndef UDP_CLIENT_H
#define UDP_CLIENT_H

#include <sys/types.h>
#include <sys/socket.h>
#include <string.h>
#include <arpa/inet.h>
#include <unistd.h>
#include <errno.h>

class UdpClient
{
public:
    UdpClient();
    ~UdpClient();

    static int send_data_onece(const char* buf, int len, int port, const char* ip="127.0.0.1");
    int init(int port, const char* ip);    
    void uninit();
    int send_data(const char* buf, int len);

protected:
    int create_sock();
    void set_addr(int port, const char* ip);

private:
    int sockfd_;
    int port_;
    char ip_[20];
    struct sockaddr_in addr_;
};

#endif // UDP_CLIENT_H
